@charset "utf-8";

body {
    background-color: #FFFACD;
    font-family: 'Verdana','Hirogino Sans','Meiryo',sans-serif; 
}


.image-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.resized-holstein_rogo {
    width: 100px;
    height: auto;
}

.resized-holstein_title {
    width: 500px;
    height: auto;

    margin: 0 auto;

}

.title-bunner {
    background-image: url("sozai/holstein_makiba.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 350px; /* 高さは画像に合わせて調整 */
    display: flex;
    align-items: center;
    justify-content: center;
    color: white; /* 文字色は背景に合わせて調整 */
    font-size: 2em;
}

nav {
    display: block;
    border-top: 2px solid #7c5d48;
    border-bottom: 2px solid #7c5d48;
    background-color: rgba(255,255,255,0.42);
    padding: 12px 0px 10px;
}

nav ul {
    display: flex;
    justify-content: center;
}

nav ul li {
    margin: 0 20px;
}

nav ul li a {
    font-size: 22px;
    font-weight: bold;
    color: #7c5d48;
}

nav ul li a:hover {
    text-decoration: underline double;
}

h1 {
    margin: 10px;
    font-size: 30px;
    font-weight: bold;
    background: linear-gradient(to bottom right, #D3D3D3, #A9A9A9);
    text-align: center;
    border: 3px solid #000000;
    border-radius: 20px;
    color: #7c5d48;
}

h2 {
    
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    margin: 0 auto;
    border: 3px solid #000000;

}

p {
    line-height: 1.5;
    text-indent: 1em; 
}

/* 共通スタイル */
.container {
  max-width: 1200px;       /* 最大幅を1200pxに制限 */
  margin: 0 auto;          /* 中央寄せ */
  padding: 0 2%;           /* 左右に少し内側の余白 */
  box-sizing: border-box;  /* paddingを含めて幅を計算 */
}

/* 画面幅が1200px以上のとき（全画面） */
@media screen and (min-width: 1200px) {
  .container {
    padding: 0 3%;
  }
}

/* 画面幅が600px以下のとき（スマホ） */
@media screen and (max-width: 600px) {
  .container {
    padding: 0 1%;
  }
}

/* ボタン全体のスタイル */
.image-button {
  position: relative; /* 子要素（文字）を絶対配置するための基準にする */
  border: none;       /* ボタンの枠線を消す */
  padding: 0;         /* ボタンの余白をなくす */
  background: none;   /* ボタンの背景色を消す（画像だけ見せる） */
  cursor: pointer;    /* マウスを乗せたときにポインター表示にする */
  width: 400px;       /* ボタンの横幅を指定（画像サイズに合わせる） */
  height: 600px;      /* ボタンの高さを指定（画像サイズに合わせる） */

  transition: transform 0.3s ease;
}

/* ボタン内の画像のスタイル */
.image-button img {
  width: 100%;        /* 親要素（ボタン）に対して横幅いっぱいに表示 */
  height: auto;       /* 縦横比を保ったまま高さを自動調整 */
  display: block;     /* 余計な隙間をなくすためにブロック表示にする */
}

/* 画像の上に重ねる文字のスタイル */
.overlay-text {
  position: absolute;           /* 親要素（.image-button）を基準に絶対配置 */
  bottom: 20px;                 /* 下から20pxの位置に配置 */
  left: 50%;                    /* 横方向の中央に配置（基準は左端） */
  transform: translateX(-50%); /* 左端基準の位置を中央に補正する */
  font-family: 'Pinyon Script', cursive; /* 筆記体フォントを指定 */
  font-size: 84px;              /* 文字サイズを指定 */
  color: white;                 /* 白文字にする */
  background-color: rgba(0, 0, 0, 0.4); /* 半透明の黒背景で文字を見やすく */
  padding: 10px 20px;           /* 背景の内側に余白をつける（上下10px、左右20px） */
  border-radius: 8px;           /* 背景の角を丸くする */
  pointer-events: none;         /* 文字部分にクリック判定が乗らないようにする */
}

.button-group {
  display: flex;
  gap: 20px; /* ボタン同士の間隔 */
  justify-content: center;
  flex-wrap: wrap; /* 画面が狭いときに折り返す */
}

.image-button:hover img {
  transform: scale(1.05); /* 5%拡大 */
  border: 2px solid #cef825; /* 白い枠を表示 */
}

.image-button:hover .overlay-text {
  background-color: rgba(0, 0, 0, 0.6); /* 少し濃くする */
}

.overlay-text {
  text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
}
